import os
import shutil

def copy_folder(source_folder, destination_folder):
    try:
        # 检查目标文件夹是否存在，如果不存在则创建它
        if not os.path.exists(destination_folder):
            os.makedirs(destination_folder)

        # 遍历源文件夹中的文件和子文件夹
        for item in os.listdir(source_folder):
            source_item = os.path.join(source_folder, item)
            destination_item = os.path.join(destination_folder, item)

            # 如果是文件，直接复制
            if os.path.isfile(source_item):
                shutil.copy2(source_item, destination_item)
            # 如果是子文件夹，递归复制
            elif os.path.isdir(source_item):
                copy_folder(source_item, destination_item)

        print(f"复制完成：{source_folder} -> {destination_folder}")

    except Exception as e:
        print(f"复制失败：{e}")


print('##### 请确认已经安装Chocolate包管理器 ######')
print('##### 请确认已经安装Node-JS ######')
print('开始安装Win配套软件。。。') 

print('当前用户路径 ： ' + os.path.expanduser('~'))
# 源文件夹路径
source_folder = os.getcwd() + '/lua'

# 目标文件夹路径
destination_folder = os.path.expanduser('~/AppData/Local/nvim')
print(source_folder)
print(destination_folder)

# 调用复制函数
copy_folder(source_folder, destination_folder + '/lua')
shutil.copy2(os.getcwd() + '/init.lua', destination_folder)
shutil.copy2(os.getcwd() + '/coc-settings.json', destination_folder)

print('安装git：')
a=os.system("choco install git")
print(a)

print('安装zig：')
a=os.system("choco install zig")
print(a)

print('安装fd：')
a=os.system("choco install fd")
print(a)

print('安装fzf：')
a=os.system("choco install fzf")
print(a)

print('安装ripgrep：')
a=os.system("choco install ripgrep")
print(a)

print('安装nodejs：')
a=os.system("choco install nodejs")
print(a)
